1. Field of the Invention
The system and method described herein relates to the handling of file system metadata.
2. Description of the Related Art
Network-attached storage provides a system architecture for providing centralized data storage for a computer network. In this architecture, one or more network-attached storage devices (“NAS devices”) are connected to storage devices, including, for example, hard drives. A system administrator configures the computer network such that individual computers store network-accessible data files centrally on one or more of the NAS devices.
A NAS device is connected to a network and can be accessed by other devices and computers connected to the same network. NAS devices generally have specialized operating systems that allow them to efficiently handle file operations, including, for example, file read and write operations, file storage, file retrieval, file backup, file restore, and the like. These specialized operating systems, however, generally are not optimized to perform operations associated with application programs. Rather, in a network with NAS devices, a traditional server typically performs operations related to applications and NAS devices perform file operations.
One function of a NAS device is to provide a mechanism to backup, restore, and migrate data files from different file systems, including UNIX file systems, Macintosh file systems, Windows file systems, and the like. (Note that this application uses several terms, including UNIX, Macintosh, Windows, and Linux, that may be trademarks or registered trademarks.) These operations, which we herein generally call “data replication operations,” require faithful replication of each file's raw data and extended attributes or metadata associated with each file. Each file system stores such metadata in a different way. Accordingly, while operating systems typically provide data replication operations that can successfully replicate metadata associated with native files, developers face difficulty in creating generic data replication operations that can successfully replicate metadata associated with files from multiple file systems.